The present invention relates generally to computers. More particularly, the present invention relates to communication bus architecture in multiple processor computer systems. Specifically, the present invention provides a method and apparatus for establishing many simultaneous communication links, each link being between any two processors of an array of multiple processors.
Computer systems that use parallel processing to achieve high overall system speed often need high-throughput communication media. Typical bus structures allow a maximum transfer rate of on the order of 50 megabytes per second. This is adequate for those computing problems that require a much greater amount of computing time as compared to communication time. However, a significant portion of those computing problems that lend themselves to solution by parallel processing have large communication requirements as well as large processing requirements. In solving these problems, it is the throughput limitations of the communication media that most profoundly limit overall system speed.
In order to increase communication throughput, bus switches have been designed that can accommodate many independent simultaneous communications. An example of such a switch is the SN74AS8840 Digital Crossbar Switch which is available from Texas Instruments, Inc. The SN74AS8840 is a device having 16 four-bit data I/O ports. The devices can be combined to form 16 data I/O ports having a word length of any number of bits. For example, eight SN74AS8840 devices can be combined to form 16 data I/O ports, each having a 32 bit word.
In a multiple processor application, 16 processors can be coupled to a bus switch made of SN74AS8840 devices. As such, as many as eight separate communications can be carried on simultaneously. Any two processors can be communicating while as many as seven other such pairs of processors similarly simultaneously communicate. In a sense, this type of bus switch is similar to a telephone exchange, where any person can talk to any other person at the same time as other sets of two people are talking.
While increasing communication throughput in a multiple processor system, bus switches such as the SN74AS8840 have the limitation of being able to switch between only a small number of processors or other terminal devices. For example, the SN74AS8840 can accommodate only 16 processors or other elements. This limitation effectively limits the total available processing power.